package com.miaosha.redis.set;

import redis.clients.jedis.Jedis;

import java.util.Set;

/**
 * @author lsq
 * @create 2021-10-19 7:53
 * @description 朋友圈点赞
 * @menu
 **/
public class MomentsDemo {

    private Jedis jedis = new Jedis("182.42.113.98", 6379);

    /**
     * 对朋友圈点赞
     *
     * @param userId
     * @param momentId
     */
    public void likeMoment(long userId, long momentId) {
        jedis.sadd("moment_like_users::" + momentId, String.valueOf(userId));
    }

    /**
     * 对朋友圈取消点赞
     *
     * @param userId
     * @param momentId
     */
    public void dislikeMoment(long userId, long momentId) {
        jedis.srem("moment_like_users::" + momentId, String.valueOf(userId));
    }

    /**
     * 查看自己是否对某条朋友圈点赞过
     *
     * @param userId
     * @param momentId
     */
    public void hasLikeMoment(long userId, long momentId) {
        jedis.sismember("moment_like_users::" + momentId, String.valueOf(userId));
    }

    /**
     * 获取一条朋友圈有哪些人点赞
     *
     * @param momentId
     */
    public Set<String> getMomentLikeUsers(long momentId) {
        return jedis.smembers("moment_like_users::" + momentId);
    }

    /**
     * 获取一条朋友圈有多少人点赞
     *
     * @param momentId
     */
    public long getMomentLikeUsersCount(long momentId) {
        return jedis.scard("moment_like_users::" + momentId);
    }

}
